SQL DELETE statement
Home

SQL DELETE statement

SQL DELETE statement

Als je met het DELETE statement een rij verwijdert uit een tabel is die rij definitief gedeleted!

Probleem

Net zoals het DROP statement verwijdert het DELETE statement objecten uit de database. Het DROP statement verwijdert een tabel uit de database, het DELETE statement verwijdert hele rijen uit de tabel. Als je geen WHERE clausule gebruikt worden alle rijen uit de tabel verwijderd en blijft alleen de structuur van de tabel over. Wees daar dus voorzittig mee want als de rijen gedeleted zijn kan je ze niet meer terughalen.

Oplossing

Meestal deleten we slechts één rij en gebruiken we dus de WHERE clausule. In het volgende voorbeeld deleten we de laatst toegevoegde rij:

-- ji
-- 27 november 2012
-- Bestandsnaam: BoekenDeleteWhere.sql
use A88586JefInghelbrecht;
delete from Boeken where Titel = 'De stad van God';

select * from Boeken;

Ik kan ook alle rijen uit de tabel in één keer deleten. Ik laat gewoon de where clausule weg:

Oefening
-- ji
-- 27 november 2012
-- Bestandsnaam: BoekenDeleteAll.sql
use A88586JefInghelbrecht;
delete from Boeken

select * from Boeken;

Sla bovenstaan script op in een bestand met de naam BoekenDeleteAll.sql.

Dat is een zeer radicale operatie. Alle rijen zijn gedeleted en je kan die niet terugzetten met een 'undo' knop.

JI
2020-01-19 11:42:17